package com.haiyou.common.http.annotation;

import java.lang.annotation.Documented;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

import javax.validation.Constraint;
import javax.validation.Payload;

/**
 * 
 * @Description: 通用的字符串输入校验
 * @author xingyuan
 * @date 2022年10月28日 上午10:42:40
 */
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target({ElementType.FIELD,ElementType.PARAMETER})
@Constraint(validatedBy = StringValidator.class)
public @interface StringValid {

	String message() default "error param";
	
	/**
	 * 是否能够为null 或  ""字符串  false 可以为null
	 */
	boolean notNull() default false;
	
	/**
	 * 字符串长度限制
	 * @return
	 */
	int length() default 2048;
	
    Class<?>[] groups() default { };

    Class<? extends Payload>[] payload() default { };
}
